package org.com.yz.dal.dao.model;

import com.alibaba.fastjson.annotation.JSONField;
import com.baomidou.mybatisplus.activerecord.Model;
import com.baomidou.mybatisplus.annotations.TableField;
import com.baomidou.mybatisplus.annotations.TableId;
import com.baomidou.mybatisplus.annotations.TableName;
import com.baomidou.mybatisplus.enums.IdType;
import lombok.Getter;
import lombok.Setter;

import java.io.Serializable;
import java.util.Date;

/**
 * <p>
 * 
 * </p>
 *
 * @author fjj123
 * @since 2018-06-13
 */
@Getter
@Setter
@TableName("mch_accnt_charge_up")
public class MchAccntChargeUp extends Model<MchAccntChargeUp> {

    private static final long serialVersionUID = 1L;

    /**
     * 主键
     */
    @TableId(value = "id_mch_accnt_charge_up", type = IdType.AUTO)
    private Integer idMchAccntChargeUp;
    /**
     * 出借方账户类型，depository-存管户,prepay-准备金账户,prepay2-准备金账户2,onway-在途账户,onway2在途账户2,profit-分润账户,assurance-担保金账户,mchsub-子商户账户
     */
    @TableField("accnt_type_lender")
    private String accntTypeLender;
    /**
     * 借方账户类型，depository-存管户,prepay-准备金账户,prepay2-准备金账户2,onway-在途账户,onway2在途账户2,profit-分润账户,assurance-担保金账户,mchsub-子商户账户
     */
    @TableField("accnt_type_borrower")
    private String accntTypeBorrower;
    /**
     * 挂账时间
     */
    @TableField("charge_up_time")
    private Date chargeUpTime;

    /**
     * 事务号
     */
    @TableField("id_deposit_transaction")
    private String idDepositTransaction;

    @TableField("create_time")
    private Date createTime;

    @TableField("update_time")
    private Date updateTime;


    @JSONField(name="mch_no")
    private String mchNo;


    private Long balance;//余额


    @JSONField(name="charge_up_amt")
    private Long chargeUpAmt;//挂账金额

    private String type;//挂账类型

    private String statu;//挂账状态


    @Override
    protected Serializable pkVal() {
        return this.idMchAccntChargeUp;
    }

    @Override
    public String toString() {
        return "MchAccntChargeUp{" +
        "idMchAccntChargeUp=" + idMchAccntChargeUp +
        ", accntTypeLender=" + accntTypeLender +
        ", accntTypeBorrower=" + accntTypeBorrower +
        ", chargeUpTime=" + chargeUpTime +
        ", idDepositTransaction=" + idDepositTransaction +
        ", createTime=" + createTime +
        ", updateTime=" + updateTime +
        "}";
    }
}
